﻿package mortal.game.view.copy.singleTowerCopy2.command
{
    import Framework.MQ.*;
    import Message.Command.*;
    import Message.Public.*;
    import mortal.game.cache.*;
    import mortal.game.mvc.*;
    import mortal.game.net.broadCast.*;
    import mortal.game.view.copy.GroupTowerCopy.data.*;
    import mortal.mvc.core.*;

    public class SingleTowerCommand extends BroadCastCall
    {

        public function SingleTowerCommand(param1:Object)
        {
            super(param1);
            return;
        }// end function

        override public function call(param1:MessageBlock) : void
        {
            var _loc_2:* = param1.messageHead.command;
            var _loc_3:* = param1.messageBase;
            switch(_loc_2)
            {
                case EPublicCommand._ECmdPublicTowerCopy4PanelInfo:
                {
                    Cache.instance.copy.groupTower.singleGanInfo = _loc_3 as STowerCopy4PanelInfo;
                    NetDispatcher.dispatchCmd(ServerCommand.SingleTowerGanInfo, null);
                    break;
                }
                case EPublicCommand._ECmdPublicTowerCopy4Info:
                {
                    Cache.instance.copy.groupTower.singleTowerInfo = _loc_3 as STowerCopy4Msg;
                    NetDispatcher.dispatchCmd(ServerCommand.SingleTowerCopyInfoRes, _loc_3);
                    break;
                }
                case EPublicCommand._ECmdPublicTowerCopy4End:
                {
                    Cache.instance.copy.groupTower.singleEndInfo = _loc_3 as STowerCopy4EndMsg;
                    GroupTowerCopyUtil.isStarTime = false;
                    NetDispatcher.dispatchCmd(ServerCommand.SingleTowerCopyEnd, _loc_3);
                    break;
                }
                default:
                {
                    break;
                }
            }
            return;
        }// end function

    }
}
